<?php
/*
 * Evaluacionnormal DAL.
 * @Autor: Andrés Ubilla.
 */
class EvaluacionNormalDAL {
    //METODO PARA GRABAR EVALUACIONNORMAL.
    public static function grabar($oEvaluacionnormal){
        try{
            $arr = array(
                "{#FECHAEVALUACION}" => $oEvaluacionnormal->getFechaEvaluacion(),
                "{#PESO}" => $oEvaluacionnormal->getPeso(),
                "{#CINTURA}" => $oEvaluacionnormal->getCintura(),
                "{#CCOMBLIGO}" => $oEvaluacionnormal->getCcOmbligo(),
                "{#COMENTARIO}" => $oEvaluacionnormal->getComentario(),
                "{#IDPACIENTE}" => $oEvaluacionnormal->getIdPaciente()
            );
            $query = Util::getQuery($arr, EvaluacionnormalSQL::$GRABAR_EVALUACIONNORMAL);
            $arrDatos = Bd::exec($query);

            $id = Bd::$IDENTITY; //Retorno id insertado
            return $id;
        } catch (Excepcion $e){
            throw new Exception($e->getMessage());
        }
    }

    //METODO PARA EDITAR EVALUACIONNORMAL.
    public static function editar($oEvaluacionnormal){
        try{
            $arr = array(
                "{#ID}" => $oEvaluacionnormal->getId(),
                "{#FECHAEVALUACION}" => $oEvaluacionnormal->getFechaEvaluacion(),
                "{#PESO}" => $oEvaluacionnormal->getPeso(),
                "{#CINTURA}" => $oEvaluacionnormal->getCintura(),
                "{#CCOMBLIGO}" => $oEvaluacionnormal->getCcOmbligo(),
                "{#COMENTARIO}" => $oEvaluacionnormal->getComentario(),
                "{#IDPACIENTE}" => $oEvaluacionnormal->getIdPaciente()
            );
            $query = Util::getQuery($arr, EvaluacionnormalSQL::$EDITAR_EVALUACIONNORMAL);
            $arrDatos = Bd::exec($query);

        } catch (Excepcion $e){
            throw new Exception($e->getMessage());
        }
    }

    //METODO PARA LISTAR EVALUACIONNORMAL.
    public static function listar($oEvaluacionnormal){
        try{
            $arr = array(
                "{#ID}" => $oEvaluacionnormal->getId(),
                "{#FECHAEVALUACION}" => $oEvaluacionnormal->getFechaEvaluacion(),
                "{#PESO}" => $oEvaluacionnormal->getPeso(),
                "{#CINTURA}" => $oEvaluacionnormal->getCintura(),
                "{#CCOMBLIGO}" => $oEvaluacionnormal->getCcOmbligo(),
                "{#COMENTARIO}" => $oEvaluacionnormal->getComentario(),
                "{#IDPACIENTE}" => $oEvaluacionnormal->getIdPaciente()
            );
            $query = Util::getQuery($arr, EvaluacionnormalSQL::$LISTAR_EVALUACIONNORMAL);
            $arrDatos = Bd::exec($query);
            $arrEvaluacionnormal = array();

            if (count($arrDatos) > 0) {
                foreach ($arrDatos as $row) {
                    $oEvaluacionnormal = new Evaluacionnormal();

                    $oEvaluacionnormal->setId($row["id"]);
                    $oEvaluacionnormal->setFechaEvaluacion($row["fechaEvaluacion"]);
                    $oEvaluacionnormal->setPeso($row["peso"]);
                    $oEvaluacionnormal->setCintura($row["cintura"]);
                    $oEvaluacionnormal->setCcOmbligo($row["ccOmbligo"]);
                    $oEvaluacionnormal->setComentario($row["comentario"]);
                    $oEvaluacionnormal->setIdPaciente($row["idPaciente"]);

                    $arrEvaluacionnormal[] = $oEvaluacionnormal;
                }
            }

            return $arrEvaluacionnormal;
        } catch (Excepcion $e){
            throw new Exception($e->getMessage());
        }
    }

    //METODO PARA OBTENER POR ID EVALUACIONNORMAL.
    public static function obtenerPorId($id){
        try{
            $arr = array(
                    "{#ID}" => $id
                );
            $query = Util::getQuery($arr, EvaluacionnormalSQL::$OBTENER_EVALUACIONNORMAL_POR_ID);
            $arrDatos = Bd::exec($query);

            if (count($arrDatos) > 0) {
                $oEvaluacionnormal = new Evaluacionnormal();

                foreach ($arrDatos as $row) {
                    $oEvaluacionnormal->setId($row["id"]);
                    $oEvaluacionnormal->setFechaEvaluacion($row["fechaEvaluacion"]);
                    $oEvaluacionnormal->setPeso($row["peso"]);
                    $oEvaluacionnormal->setCintura($row["cintura"]);
                    $oEvaluacionnormal->setCcOmbligo($row["ccOmbligo"]);
                    $oEvaluacionnormal->setComentario($row["comentario"]);
                    $oEvaluacionnormal->setIdPaciente($row["idPaciente"]);
                }
                
                return $oEvaluacionnormal;
            }
        } catch (Excepcion $e){
            throw new Exception($e->getMessage());
        }
    }

    //METODO PARA ELIMINAR EVALUACIONNORMAL.
    public static function eliminar($id){
        try{
            $arr = array("{#ID}" => $id);
                $query = Util::getQuery($arr, EvaluacionnormalSQL::$ELIMINAR_EVALUACIONNORMAL);
                $arrDatos = Bd::exec($query);

        } catch (Excepcion $e){
            throw new Exception($e->getMessage());
        }
    }
}
?>